﻿using System.Collections.Generic;

using Microsoft.Xna.Framework;

using Ah.Testudin.Engine.Actors;
using Ah.Testudin.Engine.Events;

namespace Ah.Testudin.Engine.AI
{
    public class HardCodedBrain : IBrain
    {
        #region Private Member Variables

        private IBehavior _patrolBehavior;

        #endregion

        #region Constructors

        public HardCodedBrain(
            Actor actor,
            int patrolWaitTime,
            float actorMoveSpeed,
            IEnumerable<Vector3> patrolPoints,
            IEventManager eventManager)
        {
            _patrolBehavior = new PatrolBehavior(
                actor,
                patrolWaitTime,
                actorMoveSpeed,
                patrolPoints,
                eventManager);
        }

        #endregion

        #region IBrain

        public IBehavior Think()
        {
            return _patrolBehavior;
        }

        #endregion
    }
}
